#include "InPreProcessor.h"

InPreProcessor::InPreProcessor(Scope* pxParent)
{
    m_pxParent = pxParent;
    m_eType = Scope::eScopePreprocessor;
    m_cLookAhead = '\0';
}

InPreProcessor::~InPreProcessor(void)
{
}

Scope* InPreProcessor::process(Token& inToken, bool &bIsEndOfScope)
{
    char cDelimiter = char(inToken);

    bIsEndOfScope=false;
    if(inToken.m_bIsDelimiter)
    {
        if('\n' == cDelimiter)
        {
            if('\\'!=m_cLookAhead)
                bIsEndOfScope= true;
        }
    }

    m_cLookAhead = cDelimiter;
    m_asWorkspace.push_back(inToken.m_sValue);
    return NULL;
}